home *** CD-ROM | disk | FTP | other *** search
Text File | 1998-10-29 | 65.7 KB | 1,546 lines |
- Achtung: Auf vielfachen Wunsch eines einzelnen Herrn habe ich die
- Sortierfolge umgedreht, d. h. die neuesten Changes stehen jetzt
- unten.
-
- *** Änderungen vom 29.12.94:
- 1 Der Redrawbug beim schnellen Aufziehen von Blöcken mit
- der Maus dürfte erledigt sein.
-
- 2 Beim automatischen Einrücken sollten jetzt keine 'Treppeneffekte'
- mehr entstehen.
-
- 3 Fehler beim Sichern der Makrotasten in die INF beseitigt, der
- u. a. dazu führte, daß die Belegung von F1 'vergessen' wurde.
-
- 4 Die Aufrufe 'setfkey' und 'killfkey' haben eine neue Syntax:
- Der erste Parameter ist eine Zeichenkette, die den Namen der
- Taste enthält. Die Syntax dieser Zeichenkette ist an 'ckey' angelehnt.
- Zulässig sind:
- - '!#x', wobei x für einen Buchstaben oder eine Ziffer steht.
- - 'sFnn', wobei s für einen Shift-Indikator analog zu 'ckey' steh
- ('!' = Shift, '^' = Control, '#' = Alternate) und nn die Nummer der
- Funktionstaste (1 <= nn <= 10) ist.
-
- 5 Ebenfalls neu in SCEleton ist der Aufruf 'cnumber'. Der einzige
- Parameter ist eine interne Funktionsnummer. Diese Funktionsnummern
- entsprechen genau den Funktionen, die über die Tastatur und/oder die
- Menüleiste aufgerufen werden können. Dieser Aufruf soll im wesentlichen
- dazu dienen, über den Makrorecorder ("Aufzeichnen von Funktionsnummern")
- Makros zu erzeigen, die von der gerade geladenen Tastenbelegung
- unabhängig sind. (Andreas: Sollte man sämtliche Nummern dokumentieren?)
-
- 6 In der Help-Anzeige sind die Kürzel für "Klammern selektieren"
- und "Wort selektieren" nicht mehr vertauscht.
-
- 7 Beim Löschen bzw. Ausschneiden der letzten Zeile wird die die Zeile
- nicht entfernt, sondern nur geleert, so daß der Cursor nicht nach
- oben wandert.
-
- 8 Beim Schließen einer Makrodatei erfolgt jetzt eine Extrawarnung,
- falls die Datei Tasten belegt hat.
-
- 9 Beim Lesefehlern während des Ladens einer Arbeitsumgebeung sollte
- es jetzt nicht mehr bei jeder einzelnen F-Taste eine neue
- Fehlermeldung geben.
-
- 10 Wird ein bereits geladenes Makropaket neu erzeugt, so wird ein
- evtl. zugehöriges Fenster geschlossen und neu geöffnet.
-
- *** Änderungen vom 31.12.94 (die Sektkorken-Beta):
- 11 In zweizeiligen Hexadezimaleditfeldern in Dialogen (Hexeditor) läßt
- sich der Cursor jetzt in die zweite Zeile stellen. Dort können Zeichen
- direkt eingegeben werden. Darüber erscheint dann sofort der
- entsprechende ASCII-Code.
-
- 12 Der Fontselector läßt jetzt Fonts bis 40 Punkt zu. Außerdem ist die
- freie Größenwahl bei Speedo-Fonts wieder möglich (war das peinlich...).
-
- 13 Es gibt neue Shortcuts:
-
- Control-Shift-U = In Großschrift.
- Control-Shift-L = In Kleinschrift.
- Control-Shift-K = In Kapitälchen.
- Control-Shift-X = Alle Fenster schließen.
-
- 14 Es gibt eine neue Tastenfunktion: Shift-Backspace löscht rückwärts
- vom Cursor bis zum Zeilenanfang.
-
- 15 Der Dialog 'Zeile anspringen' läßt nun auch relative Sprünge zu. Dazu wird eine Zahl mit Vorzeichen, also etwa '+10' oder '-20' ein-
- getragen. Dieser Wert wird dann zur aktuellen Zeilenummer addiert,
- so daß ein Vorwärts- oder Rückwärtssprung entsteht. Zahlen ohne
- Vorzeichen werden wie gehabt als absolute Zeilennummern aufgefaßt.
-
- 16 Beim Scrollen mit Tasten wird nun die Zeilennummer in er Infozeile immer upgedated.
-
- *** Änderungen vom 1.1.95 (die Katzenjammer-Beta?):
- 17 Der Shortcut Control-'>' für 'Rechts Einrücken' funktioniert wieder.
- (Da war genau ein Bit falsch)
-
- 18 Der Bildschirm-Update bei 'Return' und 'Backspace' über
- Zeilengrenzen hinweg ist jetzt schneller, so daß keine Tastendrücke
- mehr verloren gehen sollten.
-
- 19 'Delete' blockiert jetzt auf dem Ende der letzten Zeile eines Textes.
-
- *** Änderungen vom 2.1.95 (die letzte Beta vor der 1.1?):
- 20 TEE läßt jetzt auch die Eingabe von ESC und Shift-ESC für
- Shortcuts zu.
-
- 21 Wenn bei 'Zeile anspringen' die Eingabe leer bleibt, bleibt der
- Cursor jetzt auch in der aktuellen Zeile.
-
- 22 JAnE merkt sich jetzt, ob der letzte Block wort- oder zeilenweise
- aufgezogen wurde und verhält sich bei einem Shift-Klick entsprechend,
- bei einem Control-Klick dagegen nicht.
-
- 23 Ein Bug repariert, der dazu führte, daß eine aus JAnE gespeicherte
- JANE.INF nicht mehr alle Shortcuts enthielt.
-
- *** Änderungen vom 3.1.95:
- 24 Das Feature aus 22 war noch nicht so perfekt; jetzt sollte es gehen.
-
- 25 Im Hexeditor (und entsprechend in Hexfeldern in TEE) läßt sich der Cursorjetzt auch mit der Maus auf die ASCII-Zeile stellen.
-
- 26 Der Cursor in Textfenstern sollte nicht mehr über den Scrollbalken
- gezeichnet werden.
-
- 27 Es sollte jetzt nicht mehr passieren, daß deim schnellen Aufzeihen eines
- Blockes Zeilen aus der Bildschirmdarstellung verschwinden.
-
- 28 Die Einstellungen des Druckerdialoges sollten nun korrekt in der INF
- gesichert werden.
-
- *** Änderungen vom 4.1.95:
- 29 Bei Shift- (bzw. Control-) Klick wird nun geprüft, ob der Klick vor
- oder hinter der Mitte eines evtl. bereits selektierten Blockes erfolgte
- und demgemäß der Blockanfang oder das Blockende bewegt.
-
- *** Änderungen vom 5.1.95:
- 30 Der SCEleton-Compiler konnte bei einem Syntaxfehler abstürzen, wenn
- noch offene 'forward'-Deklaratinen vorlagen.
-
- 31 Der SCEleton-Aufruf 'getoption' stellte nicht vernünftig fest,
- ob der Cursor auf 'blinkend' stand.
-
- 32 Das SCEleton-System hat bei Textausgaben über 'dump' bzw. 'print'
- Mauszeigersalat produziert.
-
- *** Änderungen vom 6.1.95
- 33 Steuerung des Mauszeigers beim Starten von Makros aus dem Paketfenster
- korrigiert.
-
- 34 Tom's tolles IMG in die Infobox eingebaut.
-
- *** Änderungen vom 7.1.95
- 35 Wortweises Selektieren klappt jetzt auch bei einem Drag nach einem
- Shift-Klick in einen wortweise aufgezogenen Block.
-
- 36 Vor dem 'shel_write' bei Programmende wird jetzt getestet, ob die
- GEM-Version >= 1.04 ist. Sicher ist sicher.
-
- *** Änderungen vom 19.1.95
- 38 Unterstützunmg der XACC-Grundmessages und der Gruppe 1 eingebaut.
-
- 39 Der Fehler in der Bestimmung der Größe des Systemfonts sollte jetzt
- behoben sein.
-
- 40 Ein Textlineal in der Infozeile wird jetzt upgedated, wenn in der
- Textprofilbox eine neue Umbruchspalte eingestellt wird.
-
- 41 Anbindung an das VA/AV-Protokoll von Gemini:
-
- - JAnE meldet alle Text- und Makropaketfenster bei Gemini an.
- - Drag & Drop von Gemini aus läuft über das VA-Protokoll
- und sollte demnach auch unter Maggi gehen.
- - Darüberhinaus versteht JAnE auch AV_SENDKEY, (was ja fast mit
- ACC_KEY identisch ist).
-
- 42 JANE.INF wird zuerst in dem Verzeichnis gesucht, das durch die
- Environmentvariable HOME spezifiziert ist. Dadurch wird JAnE (laut
- einer Expertenmeinung) multiuserfähig ;-)
-
- *** Änderungen vom 21.1.95
- 43 Der 3D-Look in den Dialogen ist jetzt eingebaut, und zwar
- abschaltbar. Die Umschaltung findet im TEE unter "Systemresourcen"
- statt, so daß nicht im laufenden Betrieb gewechselt werden kann.
- Gleichzeitig ist die Infobox etwas farbiger geworden.
-
- 44 Ein Bug gefixt, der in SCEleton bei unbefriedigten 'forward'-
- Deklarationen zu Hängern führte.
-
- *** Änderungen vom 23.1.95
- 45 Bei der Suche nach dem AV-Server wird jetzt auch Thing explizit
- gesucht. Gleichzeitig die Suche nach dem Inhalt der Env-Variablen
- 'AVSERVER' korrigiert.
-
- *** Änderungen vom 30.1.95:
- 46 Ein Bug gefixt, der dazu führte, daß beim Suchen mit reg. Ausdrücken
- die Token '^' und '$' bei abgeschalteter Großschriftunterscheidung nicht
- funktionierten.
-
- 47 Das komplexe Ersetzen von Leerzeilen durch "" (nichts) klappt
- jetzt auch.
-
- 48 Die SCEleton-Aufruf 'openfile' und 'saveas' produzieren jetzt keine
- Laufzeitfehler mehr.
-
- 49 Sehr häßlichen Bug in der Verwaltung der Makropakete gefixt, der
- unter Umständen Verwaltungsstrukturen überschreiben konnte.
-
- 50 Sichergestellt, daß SCEleton beim Aufruf eines Untermakros keine
- internen Referenzen auf Variable mehr übergibt.
-
- 51 Eine laufende Makroaufzeichnung kann jetzt auch über das Neuladen
- einer INF-Datei hinweg weiterlaufen.
-
- *** Änderungen vom 30.1.95:
- 52 Bei "Sichern als" wird nun der Ausgangsname in der Titel
- zeiledes Fileselectors angezeigt.
-
- 53 SCEleton erzeugt im Falle nicht auscodierter 'forward'-
- Deklarationen eine Fehlermeldung.
-
- 54 Die Fensterregister sind jetzt von den internen Puffern abhängig,
- nicht mehr von den tatsächlichen Fenstern. Im Klartext bedeutet das, daß
- ein Fenster, das geschlossen und wieder geöffnet wird, stets an seiner alten Position erscheint.
-
- *** Änderungen vom 1.2.95
- 55 Neue Funktion: JAnE kann Gemini's Mupfel-Fenster per Fernsteuerung
- öffnen bzw. toppen. Das ist als Ersatz für den 'Shell-Escape' anderer
- Programme gedacht, sollte aber weniger problematisch sein als die
- Benutzung von system(). Dazu dient der Menupunkt "Konsole öffnen" mit dem
- Default-Shortcut "Shift-Control-Z".
-
- 56 Als Krönung des Ganzen enthält nun der Dialog "Programm starten"
- die Option "Programmstart durch Desktop". Ist sie selektiert, so wird
- der Name des zu startenden Programms an Gemini übergeben. Auf diesem
- Wege lassen sich (laut Gemini-Doku) auch Dateien "starten", für die
- unter Gemini eine Anwendung angemeldet ist. Unter SCEleton wird diese
- Option von 'startprogram' mit dem Steuerparameter 'fromdesktop=yes'
- benutzt.(Was hier für Gemini gesagt ist, gilt natürlich ebenso für jeden
- anderen AV-Server mit denselben Fähigkeiten. Bis auf die Konsole
- sollte z. B. Thing dasselbe bieten. Wie siehts mit Ease aus?)
-
- *** Änderungen vom 4.2.95
- 57 Bug im Zusammenhang mit dem Window-Backdrop repariert.
-
- 58 Nach jeder Änderung im GEM-Klemmbrett schickt JAnE unter
- Multitasking- Systemen jetzt eine SC_CHANGED-Message (nach dem
- Vorschlag von Thomas Much) an alle anderen Programme.
-
- 59 Gaaanz wichtig: Der Balken in der Fortschrittsanzeige im
- Druckdialog erscheint jetzt in Farbauflösungen rot.
-
- 60 Die Zeichenbreiten werden jetzt bei proportionalen Fonts wieder
- richtig ermittelt.
-
- *** Änderungen vom 5.2.95
- 61 Neuer SCEleton-Befehl: 'release()' (ohne Parameter). Er hat
- folgenden Zweck: Bei 'openwindow()' wird der Text hinter dem
- geöffneten bzw. getoppten Fenster als von SCEleton benutzt markiert,
- so daß er nicht geschlossen werden kann, solnage der Makro läuft. Das
- bezieht sich aber auch auf das Schließen durch 'ckey("^U")' oder
- 'cnumber(59)'. Vor diesen Befehlen sollte man also 'release()'
- einfügen. Ach ja - beim Starten eines Makros mit 'ALT-G' wird dasselbe
- Flag auf den Quelltext gesetzt, damit der im Falle von Laufzeitfehlern
- garantiert noch zur Verfügung steht, um die Fehlerzeile zu markieren.
-
- *** Änderungen vom 7.2.95
- 62 Es gibt jetzt auch SCEleton-Befehle zum Lesen und Schreiben
- von INF-Dateien:
-
- 'saveinf(file)' Sichert die aktuelle Arbeitsumgebung in
- die Datei 'file'.
- 'loadinf(file)' Liest die in 'file' gespeicherte
- Arbeitsumgebung.
-
- 'loadinf' ist in folgender Hinsicht mit Vorsicht zu genießen:
- Zum Laden der neuen Umgebung werden zunächst sämtliche derzeit im
- Speicher befindlichen Texte beseitigt. (Das ist auch zu beobachten
- wenn dieselbe Operation vom Menü aus gestartet wird.) Dabei werden
- die Flags, die 'openwindow()' setzt (siehe 61), implizit zurückgesetzt.
- Wer also diesen Befehl verwendet und hinterher Annahnmen darüber macht,
- daß sich ein bestimmter Text noch immer im Speicher befindet, ist selber
- schuld. Das Markieren der Fehlerzeile bei Laufzeitfehlern wird durch
- diesen Befehl auch unmöglich gemacht.
-
- 63 Als Ergänzung zu den vorigen ein weiterer Befehl:
-
- 'infpath(path)' liest oder setzt den aktuellen INF-Dateipfad.
-
- Dieser Pfad (er enthält auch den Namen) legt fest, in welcher Datei
- JAnE bei Programmende die Arbeitsumgebung speichert, sofern diese
- Option aktiv ist. Wird ein Leerstring als 'path' übergeben, so gibt
- 'infpath()' nur die aktuelle Einstellung zurück. Andernfalls wird der
- interne Pfad auf 'path' gesetzt.
-
- ** Änderungen vom 8.2.95
- 64 Und noch ein neuer Befehl:
-
- 'datatype(x)' gibt den Ergebnistyp des übergebenen Ausdrucks
- 'x' zurück.
-
- Genauer ist das Ergebnis von 'datatype' eine Zeichenkette mit den
- möglichen Werten:
-
- 'null' für die generische Null '$$$'
- 'int' für eine Zahl
- 'string' für eine Zeichenkett
- 'list' für eine Liste von Werten
-
- 65 Die Ausgangsknöpfe sämtlicher Dialog- und Alertboxen wurden dem
- neueren Standard angepaßt, d. h. der Knopf, der die gemeinte Aktion
- auslöst, liegt immer rechts unten.
-
- *** Änderungen vom 9.2.95
- 66 Und weils so schön war, noch zwei neue SCEleton-Befehle:
-
- 'findnext' setzt eine laufende Suche fort
- 'replacenext' sucht und ersetzt weiter
-
- Sie entsprechen genau den Menübefehlen 'Weiter suchen' und
- 'weiterersetzen' bzw. deren Pendants auf der Tastatur. Allerdings
- melden sie im Gegensatz zu diesen das Ergebnis der Suche zurück. Der
- Rückgabewert ist wie folgt zu entschlüsseln:
-
- > 0: Noch eine passende Textstelle gefunden
- == 0 Keine passende Stelle mehr gefunden
- < 0: Es ist ein Fehler aufgetreten
-
- 67 Ein Bug repariert, der beim doppelten Laden einer Datei mit Sperren
- zum Absturz führte.
-
- 68 Bei der Auswahl einer Metadatei vom Druckdialog aus wird die Maus
- wieder eingeschaltet.
-
- *** Änderungen vom 20.2.95:
- 69 Ein übler Bug repariert, der bei Belegung von F10 mit einem Makro
- zum Absturz führen konnte.
-
- 70 'loadinf' und 'saveinf' prüfen nicht mehr, ob ein Fenster offen ist.
-
- 71 Der Druckstatusdialog sieht auch wieder ordentlich aus.
-
- 72 Der 'shel_write()' am Programmende findet nur noch statt, wenn
- wirklich ein Programm gestartet wurde.
-
- 73 Auch beim 'fullen' eines Fensters wird jetzt die geänderte
- Fenstergröße vermerkt.
-
- *** Änderungen vom 28.2.95:
- 74 Ein Bug repariert, der bei Eingabe von zwei identischen
- Klammerpaaren Abstürze provozierte.
-
- 75 Alle Unterdialoge, Alertboxen etc. werden jetzt, sofern möglich, in
- Fenster gelegt. (Unmöglich ist es genau dann, wenn das System kein
- Fenster mehr öffnen kann.) Dabei wird die Menüleiste gesperrt. Der
- Zugriff auf Accessories bzw. Parallelprozessse ist aber möglich.
-
- 76 Ein Bug repariert, der ab dem zweiten Start eines Makros das
- Abbrechen mit "Shift-Shift" sicher verhinderte.
-
- *** Änderungen vom 1.3.95
- 77 Der 'ckey'-Befehl gibt jetzt im Falle von nicht vorhandenen
- Tastennamen einfach das erste Zeichen des übergebenen Strings aus. Der
- Tastenname 'ENTR' ist verschwunden (Andreas: Bitte im Handbuch
- nachbessern!), da Tasten soweit wie möglich über ASCII-Codes
- entschlüsselt werden und 'Enter' und 'Return' nunmal beide den Code 13
- liefern.
-
- 78 In den Textfenstern wird nun ein Rand von 3 Pixeln weiß gelassen.
- Dadurch hat man zwar eine Textspalte weniger, aber dafür wird m. E.
- die Lesbarkeit verbessert.
-
- *** Änderungen vom 6.3.95
- 79 Beim Sperren der Menüzeile für einen modalen Fensterdialog wird nun
- nicht mehr die ganze Breite der Zeile für das Accessory-Menü
- sensibilisiert.
-
- 80 Wird eine Zeile mit Alternate-Klick selektiert, wird nun auch beim
- festgehaltener Maus zeilenweise weiterselektiert.
-
- 81 Beim Speichern der Fensterkoordinaten in der INF-Datei treten jetzt
- hoffentlich keine Rundungsfehler mehr auf, die zu Fensterwanderungen
- führen.
-
- 82 Der Abfragedialog beim wahlweisen Ersetzen liegt jetzt auch in einem
- Fenster.
-
- *** Änderungen vom 7.3.95
- 83 In den Popups für Texte und Makropakete werden jetzt die Einträge, die
- sich auf offene Fenster beziehen, abgehakt.
-
- 84 Gleichzeitig passen sich diese Popups jetzt in der Breite an die
- vorhandenen Einträge an.
-
- 85 Fehler behoben, der beim Verlassen der Zeichentabelle zu allen mögliche
- Problemen führte.
-
- *** Änderungen vom 13.3.95
- 86 Beim Laden von Texten aus einer gesicherten Arbeitsumgebung werden
- jetzt keine Leerzeilen mehr angehängt.
-
- 87 Nach einem Mausklick in den freien linken Rand sollte der Cursor jetzt
- korrekt gezeichnet werden.
-
- 88 Die SCEleton-Funktionen 'linelen()' und 'curcol()' arbeiten jetzt
- wieder korrekterweise mit Zeichenpositionen. Dabei ist zu beachten, daß
- Tabulatoren hier immer als ein Zeichen angesehen werden; dies gilt auch
- dann, wenn die expandierte Darstellung eingestellt ist.
-
- 89 Das binäre Öffnen von Dateien klappt wieder. Außerdem gibt
- 'openbinary()' keine falschen Fehler mehr zurück.
-
- 90 Zugriffe auf nicht existierende Listenelemente fängt der
- SCEleton-Interpreter jetzt sauber ab.
-
- 91 Beim Sichern der Arbeitsumgebung wird das SCEleton-Fenster nicht mehr
- mitgesichert.
-
- 92 Mal wieder eine neue Fehlermeldung: "2.44: Die Selektion ist kein
- Makroname". Sie tritt auf, wenn man versucht, einen SCEleton-Quelltext
- direkt aus dem Textfenster auszuführen und dabei einen Textblock
- selektiert hat, der kein gültiger Makroname ist. (Hat man gar nichts
- selektiert, so wird bekanntlich der oberste Makro ausgeführt.) Diese
- Situation wurde bisher stillschweigend übergangen.
-
- *** Änderungen vom 19.3.95
- 93 Im Wesentlichen wurde die Version vom 13. mit einer neuen Infobox
- ausgestattet und als 1.19 (ohne Beta) etikettiert, damit Tom sie den
- STC-Leuten für Tests zur Verfügung stellen kann. Von daher sollte sich
- bis zur offiziellen 1.20 eigentlich nicht mehr viel tun. Für Bugreports
- bin ich natürlich nach wie vor offen.
-
- 94 TEE arbeitet jetzt aus optischen Gründen immer im 3D-Look.
-
- *** Änderungen vom 22.3.95
- 95 Die Kapitälchen-Routine setzt jetzt nicht nur den ersten Buchstaben
- eines Wortes in Großschrift, sondern auch alle anderen explizit in Klein-
- schrift um.
-
- 96 Das automatische Übernehmen des Fonts aus dem Defaultprofil sollte auch
- wieder funktionieren.
-
- 97 Bei "Fenster anordnen" werden die Fenster jetzt in der Horizontalen
- gleichmäßiger verteilt.
-
- *** Änderungen vom 2.4.95
- 98 Es werden keine falschen Ein-Zeichen-Selektionen mehr stehengelassen.
-
- 99 Der SCEleton-Befehl 'redraw()' sollte jetzt pflichtgemäß funktionieren.
-
- *** Änderungen vom 18.4.95
- 100 Beim Einlesen von INF-Dateien wird die Anzahl der geladenen Texte
- jetzt korrekt nachgeführt, so daß es zu keinen falschen Fehlern wegen
- zuvieler geladener Texte mehr kommen sollte.
-
- 101 Die Fehlermeldung "Die Datei existiert nicht, ..." (M2.7) wird jetzt
- nicht mehr ausgegeben, da sie die Arbeit eher behinderte als sonstwas.
-
- 102 Bei gesperrten Texten ist auch kein Hinzuladen anderer Texte mehr
- möglich.
-
- 103 Der (bisher nicht dokumentierte) SCEleton-Befehl 'loadlineal()' heißt
- jetzt 'loadprofile()'. Hier ist die Dokumentation:
-
- loadprofile(datei)
-
- lädt zum aktuellen Text das Textprofil aus 'datei'. Er funktioniert damit
- wie der Menübefehl 'Profil laden'.
-
- 104 Als Pendant dazu gibt es ferner den neuen Befehl
-
- saveprofile(datei)
-
- der das Profil des aktuellen Textes in die Datei 'datei' sichert.
- (Beide Befehle werden jetzt auch vom Makrorecorder unterstützt.)
-
- *** Änderungen vom 20.4.95
- 105 Wird in TEE eine relativ niedrige Speichergrenze (z. B. 400 K) gesetzt,
- so verweigert JAnE jetzt nicht mehr die Mitarbeit.
-
- *** Änderungen vom 24.4.95
- 106 Die Message AP_TERM wird jetzt unter MTOS korrekt verarbeitet;
- unter MagiC 3 sollte es demnach auch gehen.
-
- *** Änderungen vom 02.05.95
- 107 Die SCEleton-Calls 'getprofile' und 'getoption' geben jetzt keine
- Ziffern mehr zurück, sondern soweit möglich die Steuerstrings, mit
- denen die entsprechenden Optionen auch gesetzt wurden, also z. B.
- 'off' und 'on' statt '0' und '1'.
-
- 108 Falls beim Laden mit Zeilenende-Code die maximale Zeilenlänge
- erreicht wird, werden keine Zeichen mehr unterschlagen.
-
- *** Änderungen vom 07.05.95
- 109 Einige Speicherreservierungen in der Startphase besser abgesichert.
-
- *** Änderungen vom 15.05.95
- 110 Wenn "Programmende mit Rückfrage" eingestellt ist, dann kann auch
- beim Shutdown durch die Dialogbox abgebrochen werden. Der Fehler, der
- angeblich unter MagiC 3 dazu führt, daß die Fenster zu früh geschlossen
- werden, ist unter MTOS nicht nachzuvollziehen. Schickt MagiC da WM_CLOSEs
- rund?
-
- 111 Die mainimale Fensterhöhe wurde etwas vergrößert, da einige TOS-
- Versionen mit zu kleinen Fenstern Probleme zu haben scheinen
-
- *** Änderungen vom 22.05.95
- 112 Eine Absturzmöglichkeit beim Programmende ausgebaut (passierte, wenn
- kein Textfenster oben lag).
-
- 113 Beim Drag & Drop und VA_START sollten jetzt keine namenlosen Files
- mehr angelegt werden.
-
- *** Änderungen vom 07.06.95
- 114 Redrawfehler bei Mausklicks (rechts) in hintenliegende Fenster dadurch
- aufgefangen, daß das fragliche Fenster kurzerhand getoppt wird.
-
- *** Änderungen vom 12.06.95
- 115 Der Mauszeiger verschwindet jetzt bei Tastendruck und zeigt sich erst
- wieder, sobald die Maus bewegt wird. Außerdem flackert er nicht mehr so sehr
- beim Textcursorblinken.
-
- 116 Die doppelten Textcursor sind jetzt hoffentlich behoben. (Ganz
- sicher kann ich da nicht sein, da der Fehler offenbar etwas mit dem
- Timing beim Blinken zu tun hat und daher nur sehr schwer zu
- reproduzieren ist.)
-
- *** Änderungen vom 15.06.95
- 117 Eine explizite Abfrage auf die Existenz von WINCOM im Speicher
- eingebaut, um die Geschwindigkeitsprobleme in diesem Fall zu umgehen.
-
- *** Änderungen vom 21.06.95
- 118 Im Zuge der Verbesserungen an den Directory-Routinen für BoxKite
- wurden die SCEleton-Calls 'Fsfirst' und 'Fsnext' so geändert, daß die
- Ergebnislisten zusdätzlich als letztes Element einen UN*X-artiges
- (oder vielmehr MiNT-artiges) Moduswort enthalten. Zur Belegung siehe
- MiNT-Dokus. Unter Plain-TOS muß das natürlich emuliert werden. Hier sind
- stets für jede Datei alle Rechte gesetzt.
-
- *** Änderungen vom 27.06.95
- 119 Ein Fehler im SCEleton-Parser behoben, der bei fehlerhaften
- Quelltexten, die nur aus einer Zeile bestehen, zum Absturz führenkonnte.
-
- *** Änderungen vom 10.07.95
- 120 Bei der Zuordnung der Textprofile zu den Texten werden jetzt die
- Extender OHNE Beachtung der Groß/Kleinschreibung geprüft. Das geschieht,
- um Fehlern auszuweichen, die auftreten, wenn JAnE aus der Mupfel gestartet
- wird und Dateinamen von Hand eingegeben werden (und dann natürlich nur in
- Kleinschrift).
-
- 121 Bei 'Speichern als' wird jetzt nur der selektierte Block gesichert,
- falls einer selektiert ist.
-
- *** Änderungen vom 11.7.95
- 122 Beim 'ckey()'-Befehl wird jetzt die Maus vorher versteckt und
- anschließend wieder gezeigt. Dadurch wird bei scrollenden Operationen
- das Mitscrollen des Mauszeigers unterbunden.
-
- 123 'Speichern als' ändert jetzt auch bei Makropaketen den Fenstertitel.
-
- *** Änderungen vom 17.7.95
- 124 Der Punkt 120 sollte jetzt korrekt funktionieren.
-
- 125 Beim zeilenweisen Aufziehen von Blöcken werden jetzt Leerzeilen
- mitselektiert.
-
- *** Änderungen vom 28.7.95
- 126 In Dialogboxen werden bei Dateinamen immer alle Zeichen akzeptiert.
-
- *** Änderungen vom 31.7.95
- 127 Bei Fundstellen der Länge 0 (kommt beim Suchen mit reg. Ausdrücken
- auf Zeilenanfänge u. ä. vor) wird jetzt nichts mehr selektiert,
- sondern nur noch der Cursor auf die Fundstelle gesetzt.
-
- 128 Die Textdarstellungsroutinen ein bißchen umorganisiert, um für den
- Einbau von Textattributen, Einfärbungen u. ä. vorbereitet zu sein.
-
- 129 Beim Drag & Drop werden nun Dateien immer an der Cursorposition
- eingefügt, und nicht mehr an der Stelle, auf die der Mauscursor zeigt.
- Ursache dafür ist, daß es zu schwierig ist, mit dem Mausform
- 'Patschhändchen' eine bestimmte Stelle anzufahren.
-
- *** Änderungen vom 3.8.95
- 130 Jetzt ist auch das direkte Drag & Drop von Textblöcken eingebaut,
- d. h. Textstücke können mit der Maus von einem Fenster ins andere
- gezogen werden. Das Verschieben wird ausgelöst, wenn man in den Block
- klickt und die Maustaste hält. Auch hierbei wird im Zielfenster an der
- Cursorposition eingefügt. Wird die Maus in den Grenzen des
- Ausgangsblockes losgelassen, so wird die Operation abgebrochen. Falls
- im Zielfenster auch schon ein Block selektiert ist, so wird dieser mit
- dem gedragten Text überschrieben. Das gilt nicht, wenn innerhalb
- desselben Fensters gedragt worden ist, da in diesem Falle vermutlich
- die Verdoppelung des Textblockes beabsichtigt war.
-
- *** Änderungen vom 20.8.95
- 131 Jetzt ist auch das externe Drag & Drop eingebaut, d. h. der
- direkte Austausch von Textstücken mit parallel laufenden Applikationen
- nach dem MTOS-D&D-Protokoll. Das setzt als Betriebssystem MTOS oder
- MagiC 3 voraus. Im Rahmen dieses Protokolls kann JAnE den Datentyp
- '.TXT' senden und empfangen.
-
- 132 Das interne D&D wurde so verändert, daß nur noch zwischen
- verschiedenen Fenstern gedragt werden kann. Wegen der Regel, daß
- immer an der Cursorposition eingefügt bzw. der selektierte Block
- überschrieben wird, scheint mir ein 'Draggen' innerhalb eines
- Fensters nicht mehr sinnvoll. Bei beiden Verfahren wird bei
- gehaltener 'Control'-Taste der Textblock ausgeschnitten, d. h. nach
- der Übertragung an der Quelle gelöscht. Da ein 'Control'-Klick
- normalerweise dazu dient, die Blockgrenzen zu verändern, ist hier die
- Bedienung etwas kompliziert: Man muß erst während des Ziehens die
- Control-Taste drücken. So lassen?
-
- 133 Bei 'Alles schließen' war die Sicherheitsabfrage wirkungslos.
- Bug gefixt.
-
- *** Änderungen vom 29.8.95
- 134 Eine neue Möglichkeit der Fließtextbearbeitung eingebaut. Unter
- Fließtext soll dabei Text verstanden werden, in dem Absatzenden mit
- CRLF markiert sind, während die Zeilenenden verschoben werden können.
- Der Fließtextmodus gilt für die interne Bearbeitung dann als aktiv,
- wenn der automatische Umbruch im Textprofil eingeschaltet wird.
-
- Dann gilt auch ein neues Absatzkonzept: Ein Absatzende wird durch eine
- Zeile markiert, an deren Ende weder ein Leerzeichen noch ein Tab
- steht. Das Leerzeichen am Ende einer Zeile bedeutet also: In der
- nächsten Zeile geht der laufende Absatz weiter. Das klingt jetzt
- vielleicht kompliziert, ergibt sich aber ganz natürlich aus dem
- Schreibfluß, da die Leerzeichen ohnehin geschrieben werden, um die
- Worte zu trennen. Beim Umbruch brauchen diese Leerzeichen dann nur
- stehen zu bleiben. Ein neuer Absatz wird erzeugt, indem sofort nach
- dem letzten Wort 'Return' gedrückt wird.
-
- Das gilt jetzt nur für die Texterfassung. Um den Fließtext auch als
- solchen zu speichern, ist im Textprofil die Option "Speichern als
- Fließtext" hinzugekommen. Ist dieser Schalter aktiv, so werden nur an
- den Absatzenden im Text die CRLFs oder sonstigen Zeilenden
- eingesetzt. Trotz der Namensgebung (Platzgründe im Dialog) wirkt
- diese Option auch beim Laden. Sie weist JAnE dann an, den Text an
- Wortzwischenräumen auf die gewünschte Breite umzubrechen. Diese
- Option kann unabhängig vom automatischen Umbruch ein- und
- ausgeschaltet werden.
-
- Diese Option wird in den SCEleton-Aufrufen 'setprofile' und 'getprofile'
- mit dem Schlüsselwort 'paratext' angesprochen.
-
- 135 Damit der Fließtext-Speicher-Schalter auch beim Laden Sinn macht,
- wurde sichergestellt, daß ein evtl. zum Text gehöriges Textprofil immer
- VOR dem Text selbst geladen und ausgewertet wird.
-
- 136 Zusätzlich sucht JAnE immer als erstes Profil zu einem Text eine
- Profildatei, die 'Textname.JTP' heißt und im selben Ordner wie der
- Text liegen muß. Zu 'erato.c' wird also beispielsweise 'erato.JTP'
- gesucht. Dementsprechend wird beim Sichern des aktuellen Textprofils
- dieser Name im Fileselektor vorgegeben.
-
- *** Änderungen bis 11.11.95
- 137 Die Zeichensatzauswahl für die Bildschirmanzeige ist aus dem
- Textprofildialog in einen eigenen Menüpunkt gewandert.
-
- 138 Das wird ein etwas längerer Eintrag, da sich eine ganze Menge getan
- hat. Bitte genau lesen!
-
- Das Wesentliche zuerst: JAnE kennt jetzt Textattribute!
- Genauer gesagt: Es ist möglich, Textpassagen kursiv, fett, hell,
- unterstrichen und/oder in einer von 7 Farben (den VDI-Farbindizes
- 1-7) erscheinen zu lassen.
-
- Diese Option muß über das Textprofil eingeschaltet werden. Die
- entsprechenden Radiobuttons im Profildialog (sie haben die
- Zeichensatzauswahl verdrängt) steuern auch die Behandlung der
- Attribute beim Abspeichern (dazu unten mehr). Mit dem Menüpunkt
- 'Bearbeiten/Stil u. Farbe' wird entweder eine Attributkombination zum
- Schreiben vorgegeben oder ein selektierter Block mit neuen Attributen
- ausgestattet.
-
- Zunächst sind ein paar Worte zur Implementierung angebracht: Die
- interne Darstellung erfolgt über 'versteckte' Steuerzeichen mit
- ASCII-Codes >= 240, die immer dort stehen, wo ein Attributwechsel
- erfolgt. (Sie können z. Zt. z. B. mit dem Hexeditor sichtbar gemacht
- werden.) Das impliziert natürlich, daß solche Zeichen nicht einfach
- so eingegeben werden können sollten (auch nicht über den Hexeditor).
- Das ist schon mal ein Grund, weshalb diese Option abschaltbar ist.
- (Ein kleiner Nebennutzen dieses Ansatzes: Es ist sehr einfach, diese
- Steuerzeichen in die 'E-Mail-Attribute' (* für Fettdruck, _ für
- Unterstreichungen etc.) zu übersetzen.)
-
- Nun sind solche Sonderzeichen im Text aber u. U. beim Abspeichern
- nicht erwünscht, weil sie z. B. einen Compiler übel zum Stottern
- bringen können. Daher gibt es zur Behandlung beim Speichern mehrere
- Möglichkeiten:
-
- a) Die Steuerzeichen können beim Speichern im Text belassen werden.
- b) Die Steuerzeichen können beim Speichern unterschlagen werden.
- (Diese Möglichkeit möchte ich mir für das kommende
- Syntax-Highlighting offenhalten. Dann könnten - je nachdem, wie
- schnell der Scanner wird - die Steuerzeichen beim Speichern
- gestrichen und beim Laden vom Scanner neu erzeugt werden.)
- c) Die Steuerzeichen können getrennt vom Text in einer eigenen Datei
- untergebracht werden. (Auf die Idee bin ich gekommen, als ich mich
- ein wenig mit dem Mac-Dateisystem befaßt habe - Stichwort
- Resource-Fork.) Das Handling ist natürlich unter TOS etwas
- komplizierter, darum biete ich diese Möglichkeit hier nur als
- Alternative an. Sie hat aber den Vorzug, daß die 'nackte' Textdatei
- als Input für Compiler etc. verwendet werden kann und die
- Attributinformationen trotzdem nicht verloren gehen. Der Name dieser
- Attributdatei wird aus dem Namensrumpf der Textdatei und der Endung
- 'JTR' gebildet. (Also: 'dummy.c' -> 'dummy.JTR') Diese JTR-Datei
- enthält zudem auch das Textprofil, mit dem die Textdatei bearbeitet
- wurde.
-
- Ein Sonderfall ist die Behandlung beim Schreiben ins GEM-Clipboard. In
- diesem Fall werden zwei Dateien erzeugt: SCRAP.TXT und SCRAP.JTX, von
- denen die letztere die Attributinformationen enthält. Bei der Arbeit
- mit dem internen Clipboard werden die Steuerzeichen beim Einfügen in
- Texte mit abgeschalteten Steuerzeichen entfernt. Wäre hier eine
- Warnung angebracht?
-
- Was fehlt noch?
- - Der Ausdruck von Texten mit Attributen geht zur Zeit nur per GDOS,
- nicht über den normalen Druckertreiber. Bevor ich daran etwas mache:
- Hat schon mal jemand eine Anpassung für HP-Laser oder -Tintenspritzer
- gebaut? Sind dafür evtl. die Druckerstrings zu kurz definiert
- - Der 'grafische Blocksatz' arbeitet zur Zeit nicht mehr; ich denke
- darüber nach, dieses Feature ganz zu streichen, da es mir in dieser
- Form nicht mehr sinnvoll erscheint.
- - Einige der Textbearbeitungsfunktionen machen garantiert noch
- Probleme, wenn Steuerzeichen im Text stehen ;-)
- - Die Textattribute werden von SCEleton aus noch in keinster Weise
- unterstützt.
- - Und natürlich noch der Scanner für das Syntax-Highlighting.
-
- ************* Achtung: ******************
- Diese Änderungen brachten es mit sich, daß einige Teile von JAnE
- (u. a. Bildschirmdarstellung von Text) von Grund auf neu geschrieben
- wurden. Diese Version ist mit entsprechender Vorsicht zu genießen!!!
-
- *** Änderungen vom 13.11.95
- 139 JAnE unterstützt jetzt auch die Programmier-Schnittstelle vo
- BoxKite 1.7x, falls dieser im Fenster liegt.
-
- 140 Ein Bug gefixt, der dazu führte, daß die Einstellungen des
- Druckerdialogs nicht korrekt in die INF gesichert wurden.
-
- 141 Beim Einschalten der regulären Ausdrücke im Suchdialog wird
- jetzt nicht mehr das komplexe Ersetzen erzwungen.
-
- *** Änderungen vom 20.1.96
- 142 Nach langer Pause gehts weiter: Der Druckerdialog wurd
- überarbeitet: Wesentliche Neuerung ist die Geräteauswahl. Am oberen
- Rand der Box liegen jetzt zwei Popups, von denen das Linke einen
- Gerätetyp, das Rechte ein Gerät dieses Types auswählt. Dabei verstehe
- ich unter einem Gerätetyp i. a. eine GDOS-Gerätekategorie, die durch
- die erste Ziffer der ASSIGN.SYS-Kennung ausgedrückt wird (2=Drucker,3
- Metafile usw.) Als spezielle Klasse kommt der "Drucker im
- Textmodus" (d. h. zum Ausdruck über GEMDOS) dazu. Der Sinn der Sache
- besteht darin, daß alle GDOS-Geräte zur Verfügung stehen, ohne daß
- beim Start alle Gerätenummern bis 99 getestet werden müssen. Der Test
- erfolgt für den aktuellen Typ bei der Auswahl im Typenpopup. Im Zuge
- dessen ist die Gerätenummernauswahl im TEE unter "Systemressourcen"
- natürlich entfallen.
-
- 143 Fehler beim komplexen Ersetzen repariert, der bei Fundstellen
- auftrat, die mit einem Zeilenende abschlossen.
-
- *** Änderungen vom 21.1.96
- 144 Das Suchen funktioniert nun auch innerhalb von Makros bei Texten,
- die Attribute enthalten. Gleichzeitig die Speicherroutine dahingehend
- geändert, daß auch Nullbytes als Zeilenenden funktionieren.
-
- 145 Bei binär geladenen Texten werden die Attribute sofort und
- prinzipiell ausgeschaltet.
-
- 146 Beim Zurücksetzen wurden die Fenstermaße nicht an einen evtl.
- geänderten Font angepaßt. Das konnte zu Redrawfehlern führen.
-
- *** Änderungen vom 4.2.1996
- Das gibt jetzt wieder einen größeren Batzen:
-
- 147 Das Attributmenü wurde etwas überarbeitet. Neu ist der Punkt
- "Kein Attribut", der auf schwarze Schrift ohne Effekte umschaltet.
-
- 148 Es ist jetzt auch möglich, im Textmodus mit Attributen zu drucken.
- Dazu existiert im TEE eine zweite Druckeranpassungsbox, in der die
- Steuersequenzem zum Einschalten der Stile bzw. Farben eingestellt
- werden können. Sie sollte für sich selbst sprechen.
-
- 149 Die Alarmboxen beim Suchen ("Text nicht gefunden" bzw. "Text wurde
- soundso oft ersetzt") können jetzt per "Einstellungen" abgeschaltet
- werden. Mißerfolge beim Suchen werden dann aber mit einem Piepser
- quittiert, damit wenigstens noch eine Rückmeldung da ist. Diese
- Einstellung wird von SCEleton aus über 'setoption' und 'getoption'
- mit dem Argument 'searchalerts' gesetzt bzw. abgefragt.
-
- 150 Der 'grafische Blocksatz' beim Druck über GDOS ist entfallen.
-
- 151 Es gibt SCEleton-Befehle zum Setzen und Abfragen von
- Textattributen:
-
- 'setstyle(style)' Stattet den selektierten Block mit den
- angegebenen Attributen aus oder bestimmt
- die Attribute für die nächste Zeicheneingabe,
- falls kein Block selektiert ist.
- (Funktioniert also wie "Stil/Farbe" unter
- "Bearbeiten".)
- 'plainstyle()' Wie 'setstyle()', nur daß alle Attribute
- abgeschaltet werden, d. h. es wird schwarze,
- unverzierte Schrift gewählt (vgl. "Kein
- Attribut").
- 'getstyle()' Gibt die Attribute des selektierten Blockes
- oder der nächsten Texteingabe zurück.
-
- Im Parameter 'style' von 'setstyle' bzw. im Rückgabewert vo
- 'getstyle' werden die Attribute über parametrische Schlüsselwörter
- wie folgt kodiert:
-
- Name Werte Bedeutung
- ---- ----- ---------
- 'underlined' 'nil' Status nicht verändern.
- 'off' Unterstreichung beenden
- 'on' Unterstreichung beginnen
- 'slanted' dito Kursivschrift
- 'bold' dito Fettschrift
- 'light' dito Helle Schrift
- 'color' 'nil' Farbe nicht verändern
- 'black' Farben
- 'red'
- 'green'
- 'blue'
- 'cyan'
- 'yellow'
- 'magenta'
-
- Beispiel:
-
- setstyle('underlined=on,color=blue');
-
- Fehlende Attribute werden unverändert gelassen, als ob sie
- mit 'nil' gesetzt worden wären.
-
- 152 Der Suchdialog hat einige neue Möglichkeiten erhalten: Zunächst
- kann angegeben werden, daß der Suchtext nur als ganzes Wort gefunden
- werden soll. Ferner können zum Suchtext Attribute mit angegeben
- werden. Eine solche Suche ist nur dann erfolgreich, wenn der Text und
- die Attribute gefunden werden. Analog können beim Ersetzen Attribute
- angegeben werden, die mit dem Ersetztext eingefügt werden.
- Schließlich liegen hinter den Eingabefeldern jetzt Popups, die die
- letzten 6 benutzten Strings speichern. Dabei werden wiederbenutzte
- Strings nach oben 'recycled' und bei Platzmangel der Älteste
- herausgeschoben. (Das ähnelt verdächtig dem Pfadmenü in BoxKite ;-)
-
- Entsprechende Erweiterungen in SCEleton: Der Modusparameter von
- 'findreplace' kann jetzt auch die Option 'word=yes/no' enthalten, der
- die Suche nach ganzen Wörtern steuert. Für dias Suchen/Ersetzen mi
- Attributen gibt es den Befehl 'xfindreplace' mit der Syntax:
-
- xfindreplace(string, replace, optionen, suchstil, ersetzstil)
-
- Dabei decken sich die ersten drei Parameter mit denen von 'findreplace'.
- 'suchstil' und 'ersetzstil' definieren die Attribute, wie unter
- 'setstyle' beschrieben.
-
- 153 Im Formatierdialog können jetzt auch Einrückungen definiert
- werden. Dabei kann angegeben werden, ob alle Zeilen oder nur die
- Absatzköpfe eingerückt werden sollen. Textbreite und Einrücktiefe
- werden in Zeichenspalten angegeben. Achtung: Die Einrücktiefe wird
- von der Textbreite subtrahiert, d. h. bei 70 Spalten Textbreite und 4
- Spalten Einrücktiefe stehen 66 Spalten für Text zur Verfügung. Diesen
- erweiterten Möglichkeiten entspricht eine erweiterte
- SCEleton-Funktion mit folgender Syntax:
-
- xreformat(modus, breite, einrueck);
-
- Die Parameter funktionieren wie folgt:
-
- 'modus': Bestimmt, was gemacht wird: Es handelt sich hier um
- parametrische Schlüsselwörter mit den folgenden
- Möglichkeiten:
-
- Name Werte Bedeutung
- ---- ----- ---------
- 'mode' 'left' Wie beim alten 'reformat()'.
- 'center'
- 'right'
- 'justify'
- 'indent' 'none' Nichts einrücken.
- 'paras' Absatzköpfe einrücken.
- 'all' Alle Zeilen einrücken
-
- 'breite': Textbreite in Spalten.
- 'einrueck': Einrückung in Spalten.
-
- Beispiel:
-
- xreformat('mode=justify,indent=paras', 70, 4);
-
- 154 Im Makrorecorder für den Suchdialog wurde 'complex' falsch
- aufgezeichnet.
-
- *** Änderungen vom 11.2.1996
- 155 Scrollfehler in der Hilfebox behoben.
-
- 156 Wenn der Textcursor wieder in den sichtbaren Bereich geholt wird,
- wird der Slider jetzt korrekt nachgeführt.
-
- 157 Im Hexeditor kann der Cursor nicht mehr mit der Maus hinter das
- Ende der Eingabe gestellt werden.
-
- *** Änderungen bis 2.4.1996
- Mal wieder eine längere Pause, aber dafür einige News:
-
- 158 Ein Bug korrigiert, der beim erfolglosen Rückwärtssuchen nach
- regulären Ausdrücken zum Absturz führte.
-
- 159 Die Kommandozeilenargumente -x, -r, -q und -[Zeile] werden auch
- dann ausgewertet, wenn die Kommandozeile per VA_START bzw. D&D
- übergeben wurde. Das Argument -[Zeile] wird nicht ausgewertet, wenn
- die Dateien ins aktuelle Fenster eingefügt werden sollen.
-
- 160 Ist ein Text einer Profildatei zugeordnet, so wird diese bei
- Änderungen in einem der Textprofildialoge sofort aktualisiert, d.h.
- das Sichern von Hand kann entfallen. Eine solche Zuordnung entsteht,
- wenn die Profildatei beim Öffnen des Textes automatisch oder später
- von Hand geladen oder unter einem Dateinamen gesichert wird.
-
- 161 Wenn mehrere Texte derselben Profildatei zugeordnet sind (z. B.
- über den Dateityp) und in einem dieser Texte das Profil verändert
- wird, so werden alle betroffenen Texte automatisch angepaßt.
-
- 162 Beim Beenden von JAnE wird in JANE.INF anstelle der kompletten
- Profilinformationen nur ein Verweis auf die Profildatei gespeichert,
- sofern eine zugeordnet war. Falls die Zuordnung über den Dateityp
- zustande kam, so wird in JANE.INF nur diese Tatsache vermerkt. Das
- soll bewirken, daß zwischenzeitliche Änderungen der Typzuordnungen
- über TEE sofort wirksam werden.
-
- 163 Beim automatischen Umbruch werden an den Zeilenenden nur noch
- Leerzeichen entfernt, aber keine Tabs mehr. Dadurch springt der
- Cursor nicht mehr, wenn ein Tab am Zeilenende eingefügt wird.
-
- 164 Die Textattribute haben jetzt ihre Daseinsberechtigung erhalten:
- Das Syntax-Highlighting ist eingebaut!
-
- Es ist jetzt also möglich, in Programmtexten, TeX-Texten etc.
- Textteile anhand ihrer syntaktischen Bedeutung durch Farben und/oder
- Attribute hervorzuheben. Diese Features werden über das Textprofil
- gesteuert und im Dialog "Optionen/Hervorhebungen" eingestellt. Zuvor
- müssen sie aber unter "Optionen/Textprofil" eingeschaltet werden.
- Andernfalls ist "Hervorhebungen" nicht anwählbar.
-
- Unter "Hervorhebungen" können die folgenden Textbestandteile mit
- Stilkombinationen versehen werden: Zeichenketten, Kommentare und
- Schlüsselwörter. Zeichenketten und Kommentare werden wie gehabt unter
- "Syntaktisches" definiert. Die Schlüsselwortliste befindet sich unter
- "Hervorhebungen". Bei einem Schlüsselwort, das hier eingetragen wird
- muß es sich natürlich um ein Wort im Sinne der Definition unter
- "Syntax" handeln.
-
- Neben der Schlüsselwortliste können Schlüsselwörter auch über eine
- Markierung definiert werden. Das bedeutet einfach, daß jedes Wort,
- dem ein bestimmtes Markierungszeichen ohne trennendes Leerzeichen
- vorausgeht, als Schlüsselwort angesehen wird. Wird als Markierung
- z.B. der Backslash eingestellt, so hat man alle TeX-Befehle erfaßt,
- ohne auch nur ein Schlüsselwort von Hand einzugeben.
-
- *** Änderungen bis 5.4.1996
- 165 Es ist jetzt nicht mehr möglich, dieselbe Datei in mehreren
- Textpuffern zu öffnen. Dies scheint mir im Verhältnis zum praktischen
- Nutzen zu verwirrend. Wird versucht eine Datei zum zweitenmal zu
- öffnen, so erscheint ein Alert, der die Auswahl bietet, die Datei
- anzuzeigen (d.h. das Fenster zu toppen), oder sie neu zu laden (was
- dem Zurücksetzen über das Menü entspricht).
-
- 166 SCEleton erzeugt keinen Laufzeitfehler mehr, wenn einem
- Stringelement der ASCII-Code 255 zugewiesen werden soll.
-
- 167 Wieder ein neuer SCEleton-Befehl:
-
- rv = stripchars(string, class);
-
- Dieser Befehl entfernt aus der Zeichenkette 'string' alle Zeichen der
- Klasse 'class' und liefert das Ergebnis in 'rv' zurück. Dabei muß
- 'class' als Zeichenklasse im Sinne der regulären Ausdrücke angegeben
- werden. Mit diesem Befehl lassen sich leicht die
- Attribut-Steuerzeichen aus einer Textzeile entfernen:
-
- text = stripchars(zeile, "[\xf0-\xff]");
-
- 168 Die 3D-Dialoge sind jetzt standardmäßig eingeschaltet und müssen
- über TEE ausgeschaltet werden.
-
- *** Änderungen bis 10.4.1996
- 169 Wenn JAnE komplett ikonifiziert ist (Control-Click auf den Smaller)
- und ein neues Fenster geöffnet werden soll, wird zuerst alles
- entikonifiziert.
-
- 170 Bei der Anmeldung zum VA-Protokoll wird jetzt der App-Name
- verwendet, unter dem JAnE beim AES tatsächlich bekannt ist. Das räumt
- hoffentlich die Probleme mit Thing aus.
-
- *** Änderungen bis 27.4.199
- 171 Der automatische Umbruch wurde überarbeitet. Die Probleme im
- Zusammenhang mit dem autom. Einrücken und Zeilen ohne Umbruchstellen
- sollten damit behoben sein.
-
- 172 Beim Öffnen eines neuen Textes wurde u. U. nicht korrekt erkannt,
- ob die Datei schon geladen war.
-
- 173 Die Routine für die Blockselektion durch Aufziehen hatte immer
- noch Zeichenfehler beim wortweisen Selektieren.
-
- 174 Beim zeilenweisen Selektieren bleibt jetzt die Startzeile immer
- selektiert.
-
- 175 Es wird jetzt korrekt erkannt, ob ein Mausklick in den bestehenden
- Block erfolgte, um das Drag&Drop anzubieten.
-
- *** Änderungen bis 5.5.1996
- 176 Beim Highlighting wurde die Cursorpositionen beim Einfügen der
- Steuerzeichen nicht immer korrekt nachgeführt. Das war wohl die
- Ursache für Wilfrieds Fehler 42 bis 44.
-
- 177 Das Handling der Keywordliste im Dialog 'Hervorhebungen' wurde
- überarbeitet. Damit sollten die Abstürze beim Löschen von Keywords
- erledigt sein. Zudem ist es nicht mehr möglich, Keywords doppelt
- einzugeben; und es ist ein Autolocator dazugekommen.
-
- *** Änderungen bis 12.5.1996
- 178 Beim automatischen Zeilenumbruch werden Zeilen, die nur aus Spaces
- und Tabs bestehen, nicht mehr verändert.
-
- 179 Der Bildschirmaufbau beim automatischen Umbruch wurde überarbeitet
- und sollte etwas flotter geworden sein. 180 Der Startupcode erkennt
- jetzt beim Parsen der Kommandozeile einfache und doppelte
- Anführungszeichen. Das ARGV-Verfahren geht jetzt auch wieder.
-
- 181 Unter case-sensitiven Dateisystemen werden jetzt die Resource-
- und Message-Datei als 'jane.rsc' und 'jane.msg' (also in
- Kleinbuchstaben) gesucht. Für TEE gilt dasselbe.
-
- 182 Der SIGTERM-Handler setzt jetzt nur eine globale Variable, die
- in der Hauptschleife regelmäßig abgefragt wird. Damit ist beim
- Beenden die Anzeige von Fehlermeldungen über GEM-Aufrufe möglich.
-
- 183 TEE läßt jetzt im Dialog für die Profildateien Kleinbuchstaben zu.
-
- 184 Werden im aktuellen Textprofil die Attribute abgeschaltet, so
- werden jetzt auch in allen betroffenen Texten die Steuerzeichen
- entfernt.
-
- 185 Bei "Speichern unter..." erhält der Text nun automagisch das
- zum neuen Namen passende Textprofil.
-
- 186 Blöcke aus Texten mit Syntax-Highlighting werden grundsätzlich
- ohne Attribute ausgeschnitten oder kopiert. Ich weiß zwar noch nicht,
- ob das der Weisheit letzter Schluß ist, es ist aber ein stabilerer
- Stand als vorher.
-
- 187 Zu Texten mit Syntax-Highlighting werden jetzt die Blockgrenzen
- korrekt in die INF-Datei geschrieben.
-
- *** Änderungen bis 12.5.1996
- 188 Ein übler Fehler beseitigt, der dazu führte, daß die Informationen
- über geladene SCC-Files nicht korrekt in die INF-Datei geschrieben
- wurden. Das Resultat waren zerstörte INF-Dateien.
-
- 189 An TEE kann jetzt auch eine Datei per Kommandozeile übergeben
- werden.
-
- *** Änderungen bis 25.5.1996
- 190 Der Dialog "Suchen & Ersetzen" wurde optisch überarbeitet.
-
- 191 SCEleton merkt sich jetzt die von Fcreate() und Fopen() geöffneten
- Handles und schließt sie bei einem Abbruch der Makrosequenz automatisch.
-
- 192 Ein neues SCEleton-Statement:
-
- rv = Fexist(dateiname);
-
- Wenn die Datei existiert, wird in 'rv' der Wert 1 zurückgegeben,
- ansonsten der Wert 0.
-
- 193 Die SCEleton-Befehle 'findreplace()' und 'xfindreplace()'
- funktionieren jetzt etwas anders. Bisher wurde eine reine
- Suchoperation daran erkannt, daß der Ersatztext leer war. Dadurch war
- es nicht möglich, die Fundstellen durch 'nichts' zu ersetzen, d. h.
- zu löschen. Daher wird eine reine Suchoperation nunmehr dadurch
- festgelegt, daß der Schlüsselwortparameter 'replace' fehlt oder als
- 'replace=no' angegeben ist.
-
- ACHTUNG: Zur Sicherheit sollten Makropakete, die diesen Befehl
- verwenden, neu übersetzt werden!!!!!
-
- 194 TEE sucht jetzt auch die Resource von JAnE (wird zum Festlegen der
- Tastaturbelegung gebraucht) als 'jane.rsc'.
-
- *** Änderungen bis 14.7.1996
- 195 Die Bedienung des Funktionsbereiches Suchern und Ersetzen" wurde
- ein wenig verändert (in Mac-Richtung ;-). Der Menüpunkt "Weiter ersetzen"
- ist entfallen und wurde durch 3 neue Punkte ersetzt:
-
- "Ersetzen": Ersetzt die aktuelle Selektion durch den Ersetztext.
- Wird er direkt nach einem Suchbefehl aufgerufen, so entspricht
- das Resultat genau den Erwartungen ;-) Es ist aber eine optische
- Prüfung des Suchergebnisses vor dem Ersetzen möglich.
-
- "Ersetzen und weitersuchen": Wie oben, nur daß anschließend in der
- voreingestellten Richtung weitergesucht wird. Dadurch wird ein
- "wahlweises Ersetzen" möglich, ohne daß das Programm in den
- Abfrageboxen hängt. Das alte wahlweise Ersetzen kann aber nach
- wie vor im Suchdialog angefordert werden.
-
- "Alles ersetzen": Es wird ab der aktuellen Cursorposition bzw. der
- aktuellen Selektion in der vorgewählten Richtung bis zum Textende
- alles ersetzt.
-
- Der SCEleton-Befehl 'replacenext()' existiert nach wie vor.
-
- 196 Die Information über das Dateiformat (ASCII-Text, Zeilenende oder
- feste Länge) ist jetzt Teil des Textprofils. Damit kann ein einmal
- binär geladener text nach Abspeichern des Profils automatisch immer
- wieder mit denselben Einstellungen geöffnet werden.
-
- 197 Ein Fehler beseitigt, der zu defekten INF-Dateien führte, falls
- Makropakete geladen waren.
-
- 198 Ein übler Fehler beseitigt, der zu Abstürzen führen konnte, wenn
- im Textprofil nur eine der beiden Kommentarvarianten tatsächlich
- definiert war.
-
- 199 Beim Einrücken nach links wurden Hervorhebungssteuerzeichen falsch
- behandelt.
-
- *** Änderungen bis 8.8.96
- 200 Die Anzahl der Menüpunkte, die das Textprofil betreffen, ist so
- groß geworden, daß der ganze Komplex in ein eigenes Menü gewandert ist.
- Im einzelnen ist folgendes dazugekommen bzw. geändert:
-
- 201 Die drei möglichen Infozeilen können auch 'gestapelt', d. h.
- übereinander angezeigt werden. Daher sind aus den Radiobuttons im
- Dialog "Textprofil/Allgemeines" Checkboxen geworden. Aus optischen
- Gründen ist der Cyclebutton in der Infozeile entfallen. Das
- Weiterschalten mit "Shift-Escape" funktioniert aber noch.
-
- 202 Die Elemente, die sich mit der Pflege der freien Tabulatoren
- befassen, sind aus dem Dialog "Textprofil/Allgemeines" in einen
- eigenen Dialog gewandert. Dieser läßt sich nur dann aufrufen, wenn
- die freien Tabulatoren aktiv sind und das Textlineal in der Infozeile
- angezeigt wird. Er kann über den Menüpunkt "Tabulatoren" oder über
- einen Doppelklick auf das Textlineal erreicht werden. Die
- Linealanzeige im Dialog ist entfallen; dafür wirken die Änderungen
- sofort auf die Linealanzeige in der Infozeile des dahinterliegenden
- Fensters.
-
- 203 Es gibt jetzt auch einen Menüpunkt zum Ändern des Dateiformats
- im Textprofil mit folgenden Möglichkeiten:
-
- Die Übergeordneten Radiobuttons schalten zwischen ASCII- und
- Binärmodus um. Im ASCII-Modus kann zwischen TOS-, UNIX- und
- Mac-Zeilentrennern gewählt werden. Zusätzlich läßt sich das Speichern
- als Fließtext auch hier einschalten. Im Binärmodus kann der
- verwendete Zeilentrenner direkt angegeben werden; oder es wird das
- Speichern ganz ohne Zeilentrenner gewählt.
-
- Ein paar Bemerkungen zum Laden: Ein ASCII-Text wird beim Laden
- automatisch daraufhin untersucht, ob TOS-, UNIX- oder
- Mac-Zeilentrenner verwendet werden. Diese werden dann auch bei
- Speichern wieder verwendet. Dies kann nur für den einzelnen Text im
- Dateiformatdialog übersteuert werden. Für Binärdateien kann nur ein
- Zeilentrenner im Textprofil hinterlegt angegeben werden. Der
- alternative Zeilentrenner, der beim "Binären Laden" angegeben werden
- kann, ist nur als Hilfe beim Import gedacht. (Hmm - gibt es eigentlich
- Situationen, in denen das sinnvoll ist?)
-
- 204 Ein Fehler repariert, der beim Kopieren von Absätzen mit
- Hervorhebungen 'interne Parameterfehler' auslöste.
-
- 205 Der Befehl 'unsetenv' erzeugt keine falschen Fehlermeldungen
- mehr.
-
- *** Änderungen bis 31.08.96
- 206 Ein Fehler bei der Einfärbung von mehrzeiligen Kommentaren
- korrigiert, der dazu führen konnte, daß Text vor dem Kommentarbeginn
- mit gefärbt wurde.
-
- 207 Im Hexeditor werden keine störenden Zeichen mehr eingeblendet.
-
- 208 Beim Laden von ASCII-Texten sollten keine überflüssigen
- Leerzeilen mehr angehängt werden.
-
- 209 Fehler bei Einfärbung von mehrzeiligen Kommentaren korrigiert,
- der dazu führte, daß u. U. bis weit über das Kommentarende hinaus
- gefärbt wurde.
-
- *** Änderungen bis 10.10.96
- 210 Die Verwaltung der Textprofile wurde wieder einfacher gemacht.
- Sie unterscheidet jetzt die folgenden Fälle, die in der Infozeile
- ausgewiesen werden
-
- a) Kein Profil zugeordnet. In diesem Falle werden die
- Einstellungen des Textprofilmenüs aus dem beim Öffnen oder
- Neuanlegen aus dem Defaultprofil gesetzt und in der INF-Datei
- gespeichert, falls die komplette Arbeitsumgebung gesichert
- werden muß. Anzeige in der Infozeile: '[Intern]'.
-
- b) Ein Privatprofil. Dies ist der Fall, wenn dem Text ein
- Profil über den Namen zugeordnet wurde, also z. B. das Profil
- 'TEST.JTP' zur Datei 'TEST.DOC'. Dieses Profil wird bei
- Änderungen automatisch gesichert. Anzeige in der Infozeile:
- '[Privat]'
-
- c) Ein Typprofil. Dies ist der Fall, wenn dem Text ein Profil
- über den Dateityp zugeordnet wurde, also z. B. das Profil
- 'C.JTP' zur Datei 'TEST.C'. Dieses Profil wird bei Änderungen
- ebenfalls automatisch gesichert. Weiterhin werden Änderungen
- auf alle Texte übertragen, die dasselbe Profiil besitzen.
- Anzeige in der Infozeile: Der entsprechende Dateityp.
-
- Darüber hinaus wird beim Speichern eines Profils geprüft, ob es einem
- geladenen Text als Typ- oder Privatprofil zugeordnet werden muß, und
- der entsprechende Text wird demgemäß aktualisiert.
-
- 211 Die Zuordnungen für Typprofile können jetzt auch in JAnE selbst
- eingestellt werden.
-
- *** Änderungen bis 22.12.96
- 212 Der Code zum Laden einer Fließtextdatei wurde völlig neu
- geschrieben. Er sollte sich jetzt nicht mehr mit den Spalten
- verzählen.
-
- 213 Neben Funktionstasten können jetzt auch AES-Messages mit Makros
- belegt werden. Dazu dient der neue Menüpunkt "AES-Nachrichten" unter
- "Makros". Der danach erscheinende Dialog funktioniert genauso wie der
- Dialog zur Funktionstastenbelegung, nur daß anstelle des Tastencodes
- die Nachrichtennummer eingegeben werden muß. Diese Nummer kann sowohl
- dezimal als auch hexadezimal eingegeben werden; dazu dienen die
- beiden Editfelder oben in der Box.
-
- Die in JAnE "hart verdrahteten" Messagebehandlungen (so z. B. die
- Standardmessages für Fenster- und Menühandling, Drag & Drop,
- VA-Protokoll) können allerdings dadurch nicht ausgehebelt werden. Zur
- Zeit erfolgt aber auch keine Warnung. Solche Message-Handler werden
- zwar eingestellt, aber nie aufgerufen, da die interne Behandlung
- Vorrang hat.
-
- Wie muß nun ein solcher Message-Handler in SCEleton kodiert sein?
- Eigentlich ganz einfach: Er muß - genau wie ein Tastenhandler - ein
- parameterloser Makro sein. Um nun an die Parameter aus dem
- AES-Messagebuffer zu kommen, dient die Laufzeitfunktion 'applparms()'.
- Sie wird folgendermaßen aufgerufen:
-
- liste = applparms(format);
-
- Dabei ist 'format' eine Zeichenkette, die das Layout des
- Messagepuffers beschreibt (genau wie bei 'applsend()' und
- 'applreceive()'). Je ein Buchstabe steht für den Typ eines
- Datenelementes:
-
- 'w' = word
- 'l' = longword
- 's' = string (Adresse einer nullterminierten Zeichenkette)
-
- Der Messagepuffer wird in die entsprechenden Elemente zerlegt, die
- in 'liste' zurückgegeben werden.
-
- 214 Analog zu 'setfkey()' und 'killfkey()' für Funktionstasten gibt es
- jetzt auch die SCEleton-Calls 'setmessage()' und 'killmessage()' zum
- Belegen von AES-Nachrichten. Die Syntax deckt sich mit 'setfkey()'
- und 'killfkey()', nur daß als erster (bzw. einziger) Parameter
- anstelle des Tastennamens die Message-Nummer als Zahl übergeben wird.
- Beispiele:
-
- setmessage(4711, makro, paket);
- killmessage(4711);
-
- *** Änderungen bis 26.12.96
- 215 Beim komplexen Ersetzen werden im Ersatztext eingebettete Hexcodes
- jetzt korrekt umgesetzt.
-
- 216 Enthält ein Makropaket einen Makro namens 'autoexec', so wird
- dieser schon beim Laden ausgeführt. Der Sinn der Sache besteht darin,
- etwaige Initialisierungen schon beim Laden automatisch durchführen zu
- können. Auf diese Art kann ein Paket z. B. benötigte Tasten- oder
- Nachrichtenbelegungen selbständig installieren.
-
- 217 Mit der Funktion 'myself()' kann ein Makropaket seinen eigenen
- Dateinamen erfragen. Beispiel:
-
- name = myself();
-
- 218 Mit den Funktionen 'getfkey()' und 'getmessage()' kann ein
- Makropaket prüfen, ob eine Taste bzw. Message schon belegt sind, und
- wenn ja, womit. Der Rückgabewert ist in beiden Fällen eine
- Zeichenkette, die den Makronamen UND den Paketnamen enthält, getrennt
- durch einen Semikolon. Beispiel:
-
- name = getmessage(4711);
- name = getfkey("F1");
-
- Bei unbelegten Einträgen ist der Rückgabestring logischerweise leer.
-
- 219 Bei Makros, die über "Makros/Ausführen" gestartet wurden, klappt
- die Dialog im SCEleton-Fenster jetzt wieder.
-
- 220 Der SCEleton-Interpreter baut jetzt bei jedem Start einer
- Makrosequenz einen neuen Maschinenkontext auf, ohne einen eventuell
- vorhandenen Kontext zu überschreiben. Damit sollte sie besser mit der
- Situation umgehen können, daß ein Makro eine JAnE-Funktion aufruft,
- die ihrerseits wieder einen Makro startet. Diese Situation kann jetzt
- häufiger auftreten als in älteren Versionen, da z. B. schon das
- Öffnen eines Makropaketes zur Ausführung eines "autoexec"-Makros
- führen kann.
-
- 221 JAnE beherrscht nunmehr auch eine Kürzelexpansion, die genau wie
- der Makrorecorder auf SCEleton aufbaut. Jedem Text kann über das
- Textprofil ein Makropaket als Kürzelliste zugewiesen werden
- (Menüpunkt: "Textprofil/Kürzelmakros"). Als Kürzel fungieren die
- Namen der parameterlosen Makros in diesem Paket. Die Expansion
- erfolgt mit der Tastenfunktion "Kürzelmakro expandieren", die in der
- Defaulteinstellung auf "Escape" liegt. Der Makroname muß dazu als
- separates Wort im Text stehen; der Textcursor muß dazu auf oder
- direkt hinter dem Makronamen stehen. Alternativ kann der Makroname
- als Block selektiert sein. Bei der Expansion wird dann der Makroname
- aus dem laufenden Text gelöscht und anschließend der zugehörige Makro
- gestartet. Die Cursorposition befindet sich dann am ehemaligen
- Wortanfang bzw. Blockanfang, so daß die Eingaben, die der Makro
- macht, den Makronamen ersetzen.
-
- 222 Die Namen der aktuell geladenen Texte und Makropakete werden
- numnmehr direkt in die Menüs "Makros" und "Texte" eingesetzt, so daß
- der Aufruf des nachgelagerten Popups entfällt. Ersparnis: 1 Mausklick
- ;-) Die Popups sind aber nach wie vor vorhanden und können über
- Tastaturkürzel aufgerufen werden.
-
- 223 Auch beim Einfügen eines Tabs wird nun zuvor ein evtl.
- selektierter Block gelöscht.
-
- 224 Bei automatischem Umbruch werden nunmehr die Absatzenden in der
- Textanzeige markiert.
-
- *** Änderungen bis 10.1.97
- 225 Da zu einem Fließtext eine Umbruchspalte angegeben werden muß,
- wurde ein entsprechendes Eingabefeld in den Dateiformatdialog
- aufgenommen.
-
- 226 Die Fließtexteinstellung beim Laden und Speichern sollte jetzt
- auch unabhängig vom Schalter für automatischen Umbruch funktionieren.
- Bei abgeschaltetem Umbruch werden Absätze aber nur durch Leerzeilen
- markiert.
-
- 227 Im Suchdialog wird der Schalter 'Suchbereich = Block' gesperrt,
- wenn kein Block selektiert ist.
-
- 228 Im Dialog "Textprofil/Allgemeines" wird "Fließtext" jetzt
- gesperrt, wenn das Dateiformat auf "Binär" steht.
-
- 229 Wenn der automatische Umbruch abgeschaltet ist, d.h. Absatzenden
- durch Leerzeilen markiert sind, werden jetzt auch beim nachträglichen
- Formatieren die entsprechenden Leerzeilen wieder eingefügt.
-
- 230 Bug repariert, der dazu führte, daß die Undo-Funktion sich bei
- eingeschalteten Textattributen noch gelegentlich mit den Spalten
- verzählte.
-
- 231 Das Markieren von Klammerblöcken bei eingeschalteten
- Textattributen funktionierte nicht richtig, wenn im Klammerwort
- Attributzeichen standen.
-
- 232 Bug beim Zusammenfügen von Makropaketen beseitigt, der dazu
- führte, daß SCEleton bei Verweisen auf globale Variable und
- Unterfunktionen durcheinander kam.
-
- 233 JAnE sucht jetzt schon beim Start ein Makropaket namens JANE.SCC
- im Default-Verzeichnis (also dort, wo auch die Resource steht) und
- lädt es, falls es existiert. Dieses Paket kann eine Grundausstattung
- an Makros enthalten. Außerdem bekommt es eine spezielle Bedeutung im
- Zusammenhang mit dem Makrorecorder (s. u.).
-
- 234 Der Makrorecorder wurde überarbeitet: Man kann jetzt schon beim
- Anlegen eines Makros festlegen, was später damit passieren soll. Es
- gibt folgende Varianten:
-
- - Inhalt von 'recorder' anzeigen: Das ist das bisherige Verhalten,
- außer daß der Compile-Dialog nicht mehr automatisch kommt.
-
- - Makro in das Standardpaket aufnehmen: Der Makro wird an JANE.SCC
- (s. o.) angehängt.
-
- - Makro in die aktuelle Kürzelliste aufnehmen: Dito, nur für die
- Kürzeldatei des Textprofils. Demgemäß ist dieser Punkt nicht
- wählbar, wenn das Textprofil keine Kürzelliste enthält.
-
- In den beiden letzten Fällen kann man auch schon sofort festlegen,
- welche Funktionstaste später belegt werden soll.
-
- *** Änderungen bis 22.1.97
- 235 Schlüsselregistrierung eingebaut. Die Registrierdaten werden in
- einem Unterdialog des Info-Dialoges eingegeben. Die
- Shareware-Einschränkungen bestehen darin, daß nur 3 Texte und 3
- Makropakete gleichzeitig geöffnet werden können. Außerdem erscheint
- beim Programmende und beim Sichern von Files eine aufmunternde
- Meldung.
-
- 236 Die Kommandos 'Undo' und 'Zurücksetzen' funktionieren jetzt auch
- für Makropakete: Beide Kommandos laden die letzte Version des Paketes
- von der Platte zurück.
-
- 237 Der Druckerdialog zeigt jetzt für GDOS-Treiber die Klartextnamen
- anstelle der Dateinamen an.
-
- 238 JAnE fungiert jetzt auch als OLGA-Server.
-
- 239 Es besteht die Möglichkeit, die Liste der Schlüsselworte für die
- Hervorhebungen aus einem Text zu übernehmen, Dabei wird jeweils das
- erste Wort jeder Zeile übernommen.
-
- 240 Die Makrofenster haben einen neuen Button bekommen: "Löschen".
- Damit kann der gerade selektierte Makro gezielt aus dem Paket
- gelöscht werden. Diese wird allerdings dann gesperrt, wenn der Makro
- von anderen Makros aufgerufen wird. Dann wäre ein Löschen auch
- tödlich.
- Diese Funktion ist dafür gedacht, ein Paket zu pflegen, das über den
- Makrorecorder zusammengestellt wurde, ohne daß der Quelltext manuell
- bearbeitet wurde. In solchen Paketen sind einzelnen Makros i. d. R.
- unabhängig voneinander, so daß das Löschen immer möglich ist.
-
- 241 Fehler behoben, der dazu führte, daß in den Textprofilen u. U.
- defekte Informationen über Kürzellisten abgespeichert wurden.
-
- *** Änderungen bis 22.3.97
-
- 242 Der Befehl 'mypath' funktioniert jetzt auch in Makros, die
- über die Kommandozeile mit '-x' gestartet werden.
-
- 243 Makropakete, die beim Übersetzen automatisch gesichert werden,
- werden nicht mehr als geändert markiert.
-
- 244 Wenn in der aktuellen Konfiguration "Arbeitsumgebung sichern"
- eingeschaltet ist, wird jetzt auch beim Neulesen einer .INF-Datei
- (auch per Makro) erstmal der aktuelle Stand gesichert.
-
- 245 Zudem werden jetzt beim Neulesen einer.INF-Datei die im Speicher
- stehenden Makropakete gelöscht. Falls die Aktion von einem Makro aus
- angestoßen wurde, wird das gerade laufende Paket natürlich von der
- Bereinigung ausgenommen.
-
- 246 Die Warnung beim Überschreiben von Makropaketen sollte jetzt nur
- noch bei "Speichern als..." erfolgen.
-
- *** Änderungen bis 15.3.97
- 247 Das Aussehen der 3D-Oberfläche wurde etwas modifiziert. Ich hoffe,
- es gefällt ;-)
-
- 248 Fehler beim formatierten Ersetzen mit Registern beseitigt: Wenn
- die Fundstelle mit '^' begann, verzählte sich die Erstzroutine beim
- "Ausschneiden" der Registerinhalte aus dem Ursprungstext um ein
- Zeichen.
-
- 249 Die Routine für den automatischen Zeilenumbruch wurde komplett
- überarbeitet und erhält jetzt Einrückungen im Text.
-
- 250 JAnE stürzt nicht mehr ab, wenn der OLGA-Manager nachgestartet
- wird.
-
- 251 Die Einschränkung, daß hervorzuhebende Schlüsselworte aus dem
- Wortzeichensatz stammen müssen, wurde aufgehoben.
-
- *** Änderungen bis 19.3.97
- 252 Fehler behoben, der zu Abstürzen führte, wenn die Hervorhebungen
- eingeschaltet wurden, ohne daß Schlüsselworte definiert waren.
-
- 253 Eine kleine grafische Unschönheit beim "Starten"-Button der
- Makrofenster bereinigt.
-
- *** Änderungen bis 26.3.97
- 254 Der Aufbau der Undo-Informationen konnte bei Speichermangel zu
- Zeigersalat und damit zu Abstürzen führen. Das sollte jetzt nicht
- mehr passieren.
-
- 255 Wenn bei "Alles ersetzen" die Undo-Information nicht angelegt
- werden kann, erscheint jetzt eine Warnung, die die Möglichkeit
- offenläßt, trotzdem fortzufahren.
-
- 256 "Löschen bis Zeilenanfang" hängt sich nicht mehr auf, wenn die
- Zeile mit einem highgelighteten Schlüsselwort anfängt.
-
- 257 Fehler beim automatischen Umbruch eingerückter Zeilen behoben.
-
- *** Änderungen bis 30.3.97
- 258 Das Ersetzen von mehrzeiligen Fundstellen durch 'nichts' sollte
- jetzt korrekt durch Löschen der Fundstelle (anstatt nur Leeren der
- Zeilen) quittiert werden. Außerdem sollte es jetzt nicht mehr
- passieren, daß in diesem Fall nach dem Abschluß von "Alles ersetzen"
- ein willkürlicher Block markiert ist.
-
- 259 Fehler beseitigt, der dazu führte, daß beim automatischen Umbruch
- gelegentlich das erste Zeichen eines Wortes verloren ging.
-
- 260 Beim Selektieren von Klammern werden jetzt Klammerausdrücke als
- Wortbestandteile ignoriert.
-
- 261 Ein gesperrter Text kann jetzt geschlossen werden. Es erscheint
- nur eine zusätzliche Warnung.
-
- 262 Die Routine zum Schließen aller offenen Dateien aktualisiert jetzt
- auch das Textmenü.
-
- 263 Die Klammerdefinitionen im Textprofil ziehen jetzt auch sofort
- nach dem Neuladen eines Profils.
-
- 264 Wird beim Start ein Makro mit '-x' ausgeführt, der eine neue
- INF-Datei lädt, so sollte die Verkettung der Makropakete jetzt nicht
- mehr in Unordnung geraten.
-
- 265 Überschrift des Fileselectors bei der Auswahl eines Typprofils
- korrigiert. Gleichzeitig einen Vertipper in der Routine für die
- Zuordnungen beseitigt, der zu Zeigersalat führen könnte.
-
- 266 Beim Vorwärts-Markieren per Tastatur mit Control-I wird jetzt das
- Cursorzeichen nicht mehr mitselektiert.
-
- 267 Es gibt eine neue Option im Dialog für die Hervorhebungen:
- "GROSS=klein". Ist dieser Punkt selektiert, so werden die
- Schlüsselworte unabhängig von Groß- und Kleinschreibung erkannt. Das
- ist für Programmiersprachen gedacht, die diese Unterscheidung auch
- nicht machen.
-
- 268 Wenn die Kommentardefinitionen geändert werden und die
- Hervorhebungen aktiv sind, wird der Text jetzt sofort neugezeichnet.
-
- 269 Es gibt zwei neue SCEleton-Befehle, die in erster Linie dazu
- dienen, Makropakete, die einen größeren Text über die
- Pufferfunktionen zeilenweise bearbeiten, griffiger zu machen. Bisher
- war es so, daß Aufrufe wie 'bufputline' zu einem sofortigen
- Neuzeichnen des Textes führten, was einiges an Zeit verschlang. Das
- läßt sich nun optional unterdrücken:
-
- bufautodraw(flag);
-
- Dieser Befehl setzt ein internes Flag, das das automatische
- Neuzeichnen aus- oder einschaltet.
-
- flag = 0: Ausschalten
- flag = 1: Einschalten
- flag = -1: Nur den aktuellen Wert abfragen
-
- Beim Start einer Makrosequenz ist das Neuzeichnen immer eingeschaltet.
-
- bufredraw(handle);
-
- Dieser Befehl zeichnet das Fenster des Puffers mit Handle 'handle'
- neu, sofern es offen ist.
-
- 270 Wenn ein Auschnitt aus einem Text ohne Effekte ins GEM-Clipboard
- befödert wird, wird jetzt auch die Datei SCRAP.JTX gelöscht.
-
- 271 Fehler behoben, der dazu führte, daß u. U. auch in die SCRAP.TXT
- Effektinformationen geschrieben wurden.
-
- 272 Fehler behoben, der dazu führte, daß Textprofile auch dann schon
- zugeordnet wurden, wenn die tatsächliche Dateierweiterung ein Präfix
- des eingestellten Dateityps war.
-
- Harald
-
-